iT邦幫忙

2021 iThome 鐵人賽

DAY 19
0

補間動畫Tween Animation

先定義關鍵圖像後,運用電腦自動產生變化過程的圖像,使關鍵圖像與自然產生的圖像結合,形成連續的動畫

  1. 透明度動畫

    //建立一個AlphaAnimation類別,傳入透明度參數,1.0f為不透明,0f為透明
    val anim = AlphaAnimation(
    				1.0f, //起始透明度
    				0.2f //結束透明度
    )
    anim.duration = 1000 //動畫持續一秒
    imageView.startAnimation(anim) //執行動畫
    
  2. 縮放動畫

    //建立一個ScaleAnimation類別,傳入比例參數,1.0f為正常尺寸,大於1.0f為放大,反之為縮小
    val anim = ScaleAnimation(
    				1.0f, //X起始比例
    				1.5f, //X結束比例
    				1.0f, //Y起始比例
    				1.5f, //Y結束比例
    )
    anim.duration = 1000 //動畫持續一秒
    imageView.startAnimation(anim) //執行動畫
    
  3. 位移動畫

    //建立一個TranslateAnimation類別,傳入比例參數,0f為初始位置,大於0往右或往上,反之則往左或往下
    val anim = TranslateAnimation(
    				0f, //X起點
    				100f, //X終點
    				0f, //Y起點
    				-100f, //Y終點
    )
    anim.duration = 1000 //動畫持續一秒
    imageView.startAnimation(anim) //執行動畫
    
  4. 旋轉動畫

    //建立一個RotateAnimation類別
    val anim = RotateAnimation(
    				0f, //起始角度
    				360f, //結束角度
    				RotateAnimation.RELATIVE_TO_SELF //X以自身位置旋轉
    				0.5f, //X旋轉中心點
    				RotateAnimation.RELATIVE_TO_SELF //y以自身位置旋轉
    				0.5f, //Y旋轉中心點
    )
    anim.duration = 1000 //動畫持續一秒
    imageView.startAnimation(anim) //執行動畫
    

上一篇
Day 18 | Frame Animation
下一篇
Day 20 | MedioRecorder
系列文
社畜轉行之旅,30天Kotlin學習筆記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言